package com.fivefu.core.camera.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fivefu.core.camera.entity.DbMonitorCamera;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.fivefu.core.camera.vo.response.CameraDistributeVo;
import com.fivefu.core.data.entity.DbFfskyeyeDevice;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 探头表 Mapper 接口
 * </p>
 *
 * @author 
 * @since 2022-09-19 13:48:32
 */
public interface DbMonitorCameraMapper extends BaseMapper<DbMonitorCamera> {

    /**
     * 查询探头列表
     * @param iPage
     * @param cameraName 探头名称(模糊)
     * @param cameraCode 探头编号(模糊)
     * @param areaid 所属城区
     * @param streetid 所属街道
     * @param cameraManufacturer 厂商
     * @param codeList 包含探头编号集合
     * @param excludeCodeList 排除探头编号集合
     * @return
     */
    Page<DbMonitorCamera> queryCameraList(IPage<DbMonitorCamera> iPage, @Param("cameraName") String cameraName, @Param("cameraCode") String cameraCode,
                                          @Param("cameraType") String cameraType,@Param("areaid") String areaid, @Param("streetid") String streetid, @Param("cameraStatus") String cameraStatus,@Param("onlineStatus") String onlineStatus,
                                          @Param("cameraManufacturer") String cameraManufacturer, @Param("codeList") List<String> codeList,
                                          @Param("excludeCodeList") List<String> excludeCodeList);


    List<CameraDistributeVo> getCameraCloudDistribute(@Param("cameraName") String cameraName);
}
